package com.wanmait.translate.supplier.service.impl;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.wanmait.translate.pojo.SupplierTravel;
import com.wanmait.translate.supplier.mapper.SupplierTravelMapper;
import com.wanmait.translate.supplier.service.SupplierTravelService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;

@Service
@Transactional(rollbackFor = Exception.class)
public class SupplierTravelServiceImpl implements SupplierTravelService {
        @Resource
        private SupplierTravelMapper supplierTravelMapper;
        @Override
        public void insert(SupplierTravel object) {

        }

        @Override
        public void update(SupplierTravel object) {
            supplierTravelMapper.updateByPrimaryKeySelective(object);
        }

        @Override
        public void delete(Integer id) {
            supplierTravelMapper.updateById(id);
        }

        @Override
        public void delete(String ids) {
            String[] idsStr = ids.split(",");
            List<Integer> idsList = new ArrayList<>();
            for (String str : idsStr) {
                idsList.add(Integer.parseInt(str));
            }
            supplierTravelMapper.deleteByIds(idsList);
        }

        @Override
        public SupplierTravel selectOne(Integer id) {
            return supplierTravelMapper.getSupplierTravelById(id);
        }

        @Override
        public List<SupplierTravel> selectList() {
            return supplierTravelMapper.listAllSupplierTravel();
        }

        @Override
        public List<SupplierTravel> selectList(SupplierTravel object) {
            return null;
        }

        @Override
        public PageInfo<SupplierTravel> listAllByPage(int pageNum, int pageSize) {
            PageHelper.startPage(pageNum,pageSize);
            List<SupplierTravel> supplierTravels = supplierTravelMapper.listAllSupplierTravel();
            return new PageInfo<>(supplierTravels,9);
        }
        //根据审核状态查询所有
        @Override
        public PageInfo<SupplierTravel> listSupplierTravelByState(int pageNo,int pageSize, Integer state) {
            PageHelper.startPage(pageNo,pageSize);
            List<SupplierTravel> supplierTravels = supplierTravelMapper.listSupplierTravelByState(state);
            return new PageInfo<>(supplierTravels,9);
        }

        @Override
        public PageInfo<SupplierTravel> getTravelListBystate(Integer pageNum,Integer pageSize,Integer state) {
            PageHelper.startPage(pageNum,pageSize);
            return new PageInfo<>(supplierTravelMapper.listSupplierTravelByState(state),9);
        }

        @Override
        public PageInfo<SupplierTravel> getTravelListByName(Integer pageNum,Integer pageSize,String name) {
            PageHelper.startPage(pageNum,pageSize);
            List<SupplierTravel> supplierTravels = supplierTravelMapper.listSupplierTravelByName(name);
            return new PageInfo<>(supplierTravels,9);
        }

        @Override
        public List<SupplierTravel> ListTravelListByPage(Integer pageNum, Integer pageSize) {
            return supplierTravelMapper.listSupplierTravel(pageNum,pageSize);
        }

        @Override
        public PageInfo<SupplierTravel> listAllPass(Integer pageNum, Integer pageSize) {
            PageHelper.startPage(pageNum,pageSize);
            return new PageInfo<>(supplierTravelMapper.listAllPass(),9);
        }

}
